package net.mappoint.s.mappoint_30;

import java.net.MalformedURLException;
import java.net.URL;
import javax.xml.namespace.QName;
import javax.xml.ws.WebEndpoint;
import javax.xml.ws.WebServiceClient;
import javax.xml.ws.WebServiceFeature;
import javax.xml.ws.Service;

/**
 * The route service allows you to generate routes, driving directions, and calculated route representations (used to render a highlighted route on the map) based on locations or waypoints, set segment and route preferences, and generate map views of segments and directions.
 *
 * This class was generated by Apache CXF 2.5.0
 * 2011-12-06T10:47:11.536+08:00
 * Generated source version: 2.5.0
 * 
 */
@WebServiceClient(name = "RouteService", 
                  wsdlLocation = "http://service.mappoint.net/standard-30/mappoint.wsdl",
                  targetNamespace = "http://s.mappoint.net/mappoint-30/") 
public class RouteService extends Service {

    public final static URL WSDL_LOCATION;

    public final static QName SERVICE = new QName("http://s.mappoint.net/mappoint-30/", "RouteService");
    public final static QName RouteServiceSoap = new QName("http://s.mappoint.net/mappoint-30/", "RouteServiceSoap");
    static {
        URL url = null;
        try {
            url = new URL("http://service.mappoint.net/standard-30/mappoint.wsdl");
        } catch (MalformedURLException e) {
            java.util.logging.Logger.getLogger(RouteService.class.getName())
                .log(java.util.logging.Level.INFO, 
                     "Can not initialize the default wsdl from {0}", "http://service.mappoint.net/standard-30/mappoint.wsdl");
        }
        WSDL_LOCATION = url;
    }

    public RouteService(URL wsdlLocation) {
        super(wsdlLocation, SERVICE);
    }

    public RouteService(URL wsdlLocation, QName serviceName) {
        super(wsdlLocation, serviceName);
    }

    public RouteService() {
        super(WSDL_LOCATION, SERVICE);
    }
    

    /**
     *
     * @return
     *     returns RouteServiceSoap
     */
    @WebEndpoint(name = "RouteServiceSoap")
    public RouteServiceSoap getRouteServiceSoap() {
        return super.getPort(RouteServiceSoap, RouteServiceSoap.class);
    }

    /**
     * 
     * @param features
     *     A list of {@link javax.xml.ws.WebServiceFeature} to configure on the proxy.  Supported features not in the <code>features</code> parameter will have their default values.
     * @return
     *     returns RouteServiceSoap
     */
    @WebEndpoint(name = "RouteServiceSoap")
    public RouteServiceSoap getRouteServiceSoap(WebServiceFeature... features) {
        return super.getPort(RouteServiceSoap, RouteServiceSoap.class, features);
    }

}
